// Variables para el manejo de hojas
var hojaPrincipal = "Hoja 1";

//Datos usuarios es una hoja creada para que los usuarios puedan modificar ciertas variables desde esa hoja
var hojaDatosUsuarios = "datos usuarios";

var ss = SpreadsheetApp.getActiveSpreadsheet();

var hoja = ss.getSheetByName(hojaPrincipal);
var hojaUsuarios = ss.getSheetByName(hojaDatosUsuarios);

function asignarSeudonimos() {
  // Leer los datos de la hoja principal que corresponden al nombre del sensor (columna C) 
  //y "datos usuarios" que corresponden al nombre y al seudonimo (columnas A y B)
  var datosSensores = hoja.getRange(2, 3, hoja.getLastRow() - 1).getValues(); // Columna C
  var datosUsuarios = hojaUsuarios.getRange(2, 1, hojaUsuarios.getLastRow() - 1, 2).getValues(); // Columnas A y B

  // Crear un mapa para buscar seudónimos rápidamente
  var mapaSeudonimos = {};
  for (var i = 0; i < datosUsuarios.length; i++) {
    var sensor = datosUsuarios[i][0]; // Columna "nombre sensor"
    var seudonimo = datosUsuarios[i][1]; // Columna "seudonimo"
    if (sensor && seudonimo) {
      mapaSeudonimos[sensor] = seudonimo;
    }
  }

  // Asignar seudónimos a los sensores en la hoja principal
  var seudonimos = datosSensores.map(fila => [mapaSeudonimos[fila[0]] || fila[0]]);

  // Escribir los seudónimos en la columna H
  hoja.getRange(2, 6, seudonimos.length, 1).setValues(seudonimos);
}